Group State Flags
QuickDraw 3D defines a set of group state flags for constructing a group state value. You pass a group state value to theQ3DisplayGroup_SetState
function to set the state of a display group. The state value is a set of flags that determine how a group is traversed during rendering or picking, or when you want to compute a bounding box or sphere. Here are the currently-defined group state flags:
typedef enum TQ3DisplayGroupStateMasks { kQ3DisplayGroupStateNone = 0, kQ3DisplayGroupStateMaskIsDrawn = 1 << 0, kQ3DisplayGroupStateMaskIsInline = 1 << 1, kQ3DisplayGroupStateMaskUseBoundingBox = 1 << 2, kQ3DisplayGroupStateMaskUseBoundingSphere = 1 << 3, kQ3DisplayGroupStateMaskIsPicked = 1 << 4, kQ3DisplayGroupStateMaskIsWritten = 1 << 5 } TQ3DisplayGroupStateMasks;Constant descriptions
kQ3DisplayGroupStateNone
- No mask.
kQ3DisplayGroupStateMaskIsDrawn
- If this flag is set, the group and the objects it contains are drawn to a view during rendering or picking.
kQ3DisplayGroupStateMaskIsInline
- If this flag is set, the group is executed inline (that is, without pushing the graphics state onto a stack before group execution and popping it off after execution).
kQ3DisplayGroupStateMaskUseBoundingBox
- If this flag is set, the bounding box of a display group is used for rendering.
kQ3DisplayGroupStateMaskUseBoundingSphere
- If this flag is set, the bounding sphere of a display group is used for rendering.
kQ3DisplayGroupStateMaskIsPicked
- If this flag is set, the display group is eligible for inclusion in the hit list of a pick object.
- kQ3DisplayGroupStateMaskIsWritten
- If this flag is set, the group and the objects it contains are written to a file object during writing.
- IMPORTANT
- By default, all group state flags are set except for the
kQ3DisplayGroupStateMaskIsInline
flag, which is clear.![]()